Methods and apparatuses for digital content protection

ABSTRACT

A method for digital content protection comprises generating a plurality of frame keys, retrieving a plurality of frames from digital content, and at least one of encrypting and decrypting the digital content with a different frame key that dynamically changes for each frame of the plurality of frames. A storage device comprises a computer-readable medium including encrypted digital content stored thereon, wherein the encrypted digital content is encrypted with a frame key that is different for each frame of the encrypted digital content. A content player comprises a computer-readable medium including instructions stored thereon, that when executed cause a processor to decrypt encrypted digital content by reconstructing a plurality of frame keys that are different from each other that are used to decrypt each frame of the encrypted digital content.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of co-pending U.S. patent applicationSer. No. 14/530,348, filed Oct. 31, 2014, which will issue as U.S. Pat.No. 9,881,138 on Jan. 30, 2018, which is a continuation of U.S. patentapplication Ser. No. 13/624,726, filed Sep. 21, 2012, now U.S. Pat. No.8,898,767, issued Nov. 25, 2014, which application claims the benefit ofU.S. Provisional Patent Application Ser. No. 61/537,733, filed Sep. 22,2011, and entitled “Novel Method of Encryption for Data Stored on USB,SD, Hard Drives, or Other Portable Memory Devices, the disclosure ofeach of which is hereby incorporated herein in its entirety by thisreference.

FIELD

The present disclosure generally relates to security of digital content.More particularly, embodiments of the present disclosure relate toencryption and decryption of digital content as well as the delivery,storage, and access of such encrypted digital content.

BACKGROUND

Storing and transmitting content, such as songs, video, and other datain digital form has become commonplace as the use of various electronicdevices is more ubiquitous, and as delivery of such digital contentbecomes more convenient. Distributing digital content to users may posesecurity issues, including confidentiality and copyright protectionissues. Various methods of data encryption have been developed to offersecure methods of authorized storing and transportation of digitalcontent to users.

Conventional digital rights management systems expose security holesthat are frequently used by attackers to invade the security system,which may result in illegally obtaining digital content. The securitylayers for media, such as DVDs and Blu-ray discs, have various defectsthat allow attackers to obtain the encryption key with relative ease.For example, with conventional encryption methods, the memory block thatstores the encryption key to the encrypted content is often notprotected. As a result, memory snooping attacks may result in theencryption key being discovered. Attackers often scan memory blockswithin the hardware that decrypts such content to search for theencryption key.

Once the encryption key is discovered, the digital content may beaccessed and/or copied by unauthorized parties. Because the storagemedia (e.g., DVDs) often are mass produced, each media device mayinclude the same encryption key for identical digital content. As aresult, once one attacker is able to “crack” the DVD and obtain theencryption key, the attacker can easily share the encryption key forothers to do the same for their copies. In addition, if the securitylayer is compromised for one of the media devices, it may be difficultto ascertain information regarding the offending media device or theuser using the conventional encryption methods.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

FIG. 1 is a block diagram of a digital content delivery system accordingto an embodiment of the present disclosure;

FIG. 2 is a block diagram of a digital content delivery system accordingto an embodiment of the present disclosure;

FIG. 3 is a block diagram illustrating a method for encrypting digitalcontent according to an embodiment of the present disclosure;

FIG. 4 is a block diagram illustrating a method for decrypting encrypteddigital content according to an embodiment of the present disclosure;

FIG. 5 is a block diagram illustrating a method for encrypting digitalcontent according to an embodiment of the present disclosure; and

FIG. 6 is a block diagram illustrating a method for decrypting encrypteddigital content according to an embodiment of the present disclosure.

DETAILED DESCRIPTION

In the following description, reference is made to the accompanyingdrawings in which is shown, by way of illustration, specific embodimentsof the present disclosure. Other embodiments may be utilized and changesmay be made without departing from the scope of the disclosure. Thefollowing detailed description is not to be taken in a limiting sense,and the scope of the claimed invention is defined only by the appendedclaims and their legal equivalents.

Furthermore, specific implementations shown and described are onlyexamples and should not be construed as the only way to implement orpartition the present disclosure into functional elements unlessspecified otherwise herein. It will be readily apparent to one ofordinary skill in the art that the various embodiments of the presentdisclosure may be practiced by numerous other partitioning solutions.

Those of ordinary skill in the art would understand that information andsignals may be represented using any of a variety of differenttechnologies and techniques. For example, data, instructions, commands,information, signals, bits, symbols, and chips that may be referencedthroughout the above description may be represented by voltages,currents, electromagnetic waves, magnetic fields or particles, opticalfields or particles, or any combination thereof. Some drawings mayillustrate signals as a single signal for clarity of presentation anddescription. It will be understood by a person of ordinary skill in theart that the signal may represent a bus of signals, wherein the bus mayhave a variety of bit widths and the present disclosure may beimplemented on any number of data signals including a single datasignal.

The various illustrative logical blocks, modules, and circuits describedin connection with the embodiments disclosed herein may be implementedor performed with a general-purpose processor, a special-purposeprocessor, a Digital Signal Processor (DSP), an Application SpecificIntegrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) orother programmable logic device, discrete gate or transistor logic,discrete hardware components, or any combination thereof designed toperform the functions described herein. A general-purpose processor maybe a microprocessor, but in the alternative, the processor may be anyconventional processor, controller, microcontroller, or state machine. Ageneral-purpose processor may be considered a special-purpose processorwhile the general-purpose processor executes instructions (e.g.,software code) stored on a computer-readable medium. A processor mayalso be implemented as a combination of computing devices, such as acombination of a DSP and a microprocessor, a plurality ofmicroprocessors, one or more microprocessors in conjunction with a DSPcore, or any other such configuration. A computer-readable medium mayinclude storage media, such as ROMs, EPROMs, EEPROMs, Flash memories,optical disks, and other storage devices.

It should be understood that any reference to an element herein using adesignation such as “first,” “second,” and so forth does not limit thequantity or order of those elements, unless such limitation isexplicitly stated. Rather, these designations may be used herein as aconvenient method of distinguishing between two or more elements orinstances of an element. Thus, a reference to first and second elementsdoes not mean that only two elements may be employed there or that thefirst element must precede the second element in some manner. Inaddition, unless stated otherwise, a set of elements may comprise one ormore elements.

Embodiments of the present disclosure may enable digital content ownersto offer digital content to a user for storing, delivery, and otheraccess. Thus, embodiments of the present disclosure may support one ormore of the following business models: safe and secure rental of digitalcontent, sale or subscription services of digital content includingonline streaming of digital content, and safe and secure controlledsharing of digital content. When the user downloads the digital contentto a physical storage device, encryption authentication andauthorization software may also be downloaded with the digital content.As a result, digital content owners in a variety of different industriesmay distribute their digital content in a way that may reduce the riskof digital piracy while helping to increase their content selection theyare able to offer. In some embodiments, the authentication andauthorization software may require the use of a storage device that ispre-registered with the user's account. In some embodiments, the storagedevice may be registered with the user's account at the time of contentstorage. Distribution of the digital content may be secure, andauthorized use of the digital content may be enhanced, while reducingthe risk of theft or loss.

Embodiments of the present disclosure may further include a frame keythat is used to encrypt frames of the digital content. As used herein, a“frame” is intended to refer to a portion of the digital content. Usingthe term “frame” is not intended to imply that the digital content islimited to video content, unless specifically described as such. Theframe key may dynamically change for each frame of the digital content.

FIG. 1 is a block diagram of a digital content delivery system 100according to an embodiment of the present disclosure. The digitalcontent delivery system 100 may include an encryption device 110, astorage device 120, and a content player 130. The encryption device 110may be configured to provide the storage device 120 with encrypteddigital content. The encrypted digital content may be stored on thestorage device 120. The encrypted digital content may be decrypted andplayed by the content player 130.

Digital content may include video content, audio content, electronicbook (eBook) content, video game content, software, and variousdocuments (e.g., financial records, health records, government records,military records, business documents, etc.). As a result, embodiments ofthe present disclosure may assist a variety of industries (e.g.,entertainment industry, motion picture industry, television industry,music industry, health care industry, finance industry, publishingindustry, eBook industry, software industry, among others) in protectingcontent from unauthorized access, such as viewing, copying, or sharingthe digital content.

The encryption device 110 may include a processor 112 coupled with acomputer-readable medium 114. The computer-readable medium 114 may haveinstructions stored thereon, which may be executed by the processor 112.The instructions may cause the processor to perform one or more of theoperations described below relating to providing encrypted digitalcontent to the storage device 120. The encryption device 110 may includea computer, a server, a kiosk, or other similar device for encryptingdigital content and providing encrypted digital content to anotherdevice. The digital content may be stored in a cloud environment, alocal network environment, a kiosk, or other location for the user toaccess and download onto the storage device 120.

The storage device 120 may include a computer-readable medium 122configured to store the encrypted digital content from the encryptiondevice 110. For example, the storage device 120 may include a Flashmemory drive (e.g., USB Flash memory), a secure digital (SD) memorycard, a hard drive, an optical disc (e.g., DVD, Blu-Ray), etc.

The content player 130 may be a device configured to read the storagedevice 120, decrypt the encrypted digital content, and reproduce thedigital content for the user. For example, the content player 130 mayinclude a computer-readable medium 132 that includes instructions storedthereon, which may cause a processor to perform one or more of theoperations described below relating to the decryption of encrypteddigital content. In some embodiments, the computer-readable medium 132may include a software application stored thereon configured to read,decrypt, and reproduce the digital content. The user may also downloadand store a plug-in in the computer-readable medium 132, the plug-inbeing configured to enable a larger software application (e.g., such asthose commonly found in commercial digital content readers and players)to perform the decryption methods described herein. In addition, thecontent player 130 may include a display for displaying the reproduceddigital content. Depending on the type of digital content, the contentplayer 130 may include a personal computer, television, set top box,laptop computer, tablet computer, cellular phone, smart phone, eBookreader, audio player, gaming device, etc.

In some embodiments, the storage device 120 and the content player 130may be separate devices, such as the storage device 120 being a USBFlash memory drive and the content player 130 being a personal computerthat may receive the storage device 120 and read the digital contentstored thereon. In some embodiments, the storage device 120 and thecontent player 130 may be integrally within the same form factor. Forexample, the storage device 120 may be internal memory as part of asmart phone, a tablet computer (content player 130), a hard drive of acomputer, or other similar device. In some embodiments, the encryptiondevice 110, the storage device 120, and the content player 130 may allbe formed integrally within the same form factor.

FIG. 2 is a block diagram of a digital content delivery system 200according to an embodiment of the present disclosure. The digitalcontent delivery system 200 may include one or more servers 210 that arecoupled with a plurality of kiosks 220 through a network 205. Each kiosk220 may be located at various locations for a user to receive thedigital content. For example, the kiosks 220 may be located atsupermarkets, gas stations, restaurants, shopping centers, etc.

The server 210 may distribute digital content to each kiosk 220. Thus,in some embodiments, the kiosks 220 may hold the preliminary digitalcontent. A user may insert a storage device 120 (FIG. 1) into the kiosk220 to receive digital content. The server 210 may maintain a userdatabase 212 that includes user information, such as customer licenses,name, address, payment information, etc., associated with a user. As aresult, a user may access the digital content delivery system 200through any of the kiosks 220.

As an example, and referring to FIGS. 1 and 2, the user may insert thestorage device 120 to purchase or rent a movie. The kiosk 220 may readuser information (if any) from the storage device 120. The kiosk 220 mayaccess the database 212 (or a local version stored on the kiosk 220)access the user account associated with the particular storage device120. If the storage device 120 is not associated with an existing useraccount, the user may be required to open a user account prior toreceiving any digital content from the kiosk 220. If a user account isauthenticated for the storage device 120, the digital content may beprovided from the kiosk 220 to the storage device 120. The digitalcontent may be encrypted according to embodiments described more fullybelow.

Additional configurations for digital content delivery systems are alsocontemplated. For example, rather than having a kiosk-based system thatrequires the user to find a kiosk at a specific location, embodiments ofthe present disclosure may enable users to access a web-based digitalcontent delivery system or other online streaming applications. In sucha web-based content delivery system, a user may insert their storagedevice 120 into a computer connected to the Internet (e.g., their homecomputer). The user's account may be authenticated, after which the usermay be access their user account and other content through a website.Through such a website, the user may select digital content to downloadto the storage device 120. When the digital content is downloaded to thestorage device 120, the digital content may be encrypted and stored onthe storage device 120. The digital content may be encrypted on theserver 210 before being downloaded to the storage device 120. In otherwords, the full digital content may be encrypted on the server 210 andthen transmitted to the storage device 120. When the digital content isaccessed from the storage device 120, the digital content may bedecrypted by the content player 130. Encryption and decryption of thedigital content may be described more fully below with respect to FIGS.3-6.

In some embodiments, the storage device 120 may be memory on a computingdevice rather than a separate storage device. For example, a user maysimply use a smart phone, a tablet computer, a personal computer, etc.,with an internal hard drive as the storage device 120 to access aweb-based content delivery system to download digital content to thedevice. Accessing the web-based content delivery system may occurthrough a web site as discussed above, or through an application storedon the device that provides access to the digital content and useraccount information.

Embodiments of the present disclosure may include accessing encrypteddigital content for a variety of different settings. For example,consumer settings may be as discussed above (e.g., kiosks, web-enableddevices, etc.) In other embodiments, commercial settings are alsocontemplated. For example, a movie studio may desire to distributedigital movie content to movie theaters around the world. The moviestudio may deliver a portable hard drive to the movie theater with thedigital movie content. In such embodiments, the digital movie contentmay be encrypted on the hard drive prior to being delivered to thetheater. In some embodiments, commercial users, such as movie theaters,may be provided access to download encrypted digital content using anonline account.

FIG. 3 is a block diagram 300 illustrating a method for encryptingdigital content 302 according to an embodiment of the presentdisclosure. The encryption method provides for user authentication andauthorization in order to reduce or eliminate unauthorized access of thedigital content 302. As a result, the distribution of the digitalcontent 302 may be secured.

The method for encrypting digital content 302 may include a uniquesecurity layer that may be enforced with one or more of the followingkeys: a title key 341, a regional key 331, and a user key 326. The titlekey 341 includes an identifier associated with a particular title of thedigital content 302. For example, a particular movie (e.g., “Star Wars”)may have a title key 341 associated therewith. The title key 341 may becommon for each version of the digital content of the same title. Inother words, each instance of the digital content 302 for a particulartitle may have the same title key 341. Thus, the title key 341 fordigital content 302 of a first title (e.g., “Star Wars”) may bedifferent than the title key 341 used for the digital content 302 of asecond title (e.g., “Lord of the Rings”).

The regional key 331 includes an identifier associated with a particulargeographic location of the user of the digital content 302. For example,the regional key 331 may be based on a region in which the digitalcontent 302 is downloaded to the storage device 120. In other words, thedownloads for a common region may share a regional key 331. A commonregion may be, for example, a city, a state, a zip code, an area code, aprovince, or other defined areas as desired by the content provider.When the user downloads the digital content 302 to the storage device120, the region of the user may be determined. The region may bedetermined based on the known fixed location of a kiosk 220 (FIG. 2),the area code of a phone number of the user, the current globalpositioning system (GPS) coordinates of a device, an IP address, anaddress of the user registered in the user account, or other methods todetermine the region where the user is located or where the downloadoccurred. In some embodiments, each kiosk 220 may have its own uniqueidentifier that is used as the regional key 331.

The user key 326 includes an identifier associated with a particularuser of the digital content 302. Each user may be assigned a uniqueidentifier that is different than the other potential users. The userkey 326 may include an identifier that is device specific, such thateach storage device 120 may have a user key 326 associated therewitheven if the same user has more than one storage device 120. Thedevice-specific identifier may include a device serial code that isstored in the storage device 120. In some embodiments, the user key 326may include a combination of both a device-specific identifier and auser-specific identifier. For example, the user key 326 may include acombination of a device ID 322 and a user ID 324.

Referring now more specifically to FIG. 3, a user may desire to downloador stream the digital content 302. As discussed above, the user mayaccess the digital content 302 through a website, an application, akiosk 220 or other interface in order to download the digital content302 to a storage device 120 (e.g., USB Flash memory device, SD card,smartphone, tablet computer, laptop, television, personal computer,etc.).

At operation 310, the content management system database may be queried.For example, the content management system database may includeinformation regarding user accounts, storage device information, theregion for the user, and information regarding the title (i.e., digitalcontent) to be downloaded.

At operation 320, a user key extraction process may be initiated togenerate a user key 326. The user key 326 may include an indicatorrelated to the intended user of the digital content. In someembodiments, a device ID 322 and a user ID 324 may be combined(operation 325) to form the user key 326. As a non-limiting example, thecombination of the device ID 322 and the user ID 324 may includeperforming an XOR function of the device ID 322 and the user ID 324.Other logic functions are also contemplated.

The device ID 322 may be a device-specific identifier for the storagedevice 120. For example, a USB Flash drive may have a device serialnumber unique to the device, which is stored in memory (in the ROM) bythe device manufacturer and may be retrieved as the device ID 322. Theuser ID 324 may be a unique identifier associated with a particularuser. Each of the device ID 322 and the user ID 324 may be hashed. Inother words, the device ID 322 and the user ID 324 may be processedusing a specific hash function for additional protection.

When each user establishes a user account and registers a storage device120, the user may be assigned a user ID 324. In some embodiments, a useraccount may include have a plurality of storage devices 120 registeredto the user account. In other embodiments, each user account may beallowed to have only a single storage device 120 associated registeredper user account.

In some embodiments, the storage device 120 may be pre-formatted andloaded with the user ID 324 for a particular user. In other words, thecontent provider may issue storage devices 120 that are alreadyformatted for storing the encrypted digital content. In someembodiments, the user may use an arbitrary storage device 120 that isnot pre-formatted. Thus, during the user key extraction process ofoperation 320, it may be determined that the storage device 120 has notyet been formatted to include the user ID 324, which may be remedied byformatting the arbitrary storage device 120 to include the user ID 324for the particular user.

As described above, the device ID 322 may be a hardware serial code thatmay not be the result of formatting by the content provider, while theuser ID 324 may be the result of formatting by the content provider. Asa result, the user ID 324 may be revoked by the content provider ifdesired, while the device ID 322 may remain fixed in the storage device120.

In some embodiments, the encryption method using the regional title key344 may be performed on the fly at the time that the digital content 302is provided to the user. For example, the user may select digitalcontent to download from a kiosk, over the Internet, etc. In someembodiments, the encryption method using the regional title key 344 mayfirst encrypt and store the encrypted digital content on a storagedevice 120 that is then delivered to the user. For example, a hard drivemay be loaded with encrypted digital content for one or more movies, andthen the hard drive may be delivered to a movie theater. The contentprovider may assign each movie theater with its own unique user ID 324.As a result, the hard drive may be loaded with a regional title key 344that includes a multi-tier key that includes the user ID 324, theregional key 331, and the title key 341. Thus, if information regardingthe encrypted digital content were leaked, the specific movie theaterwhere the content was leaked may be determined.

At operation 330, a regional key extraction process may be initiated togenerate a regional key 331. The regional key 331 may include anidentifier associated with a particular geographic location of the userof the digital content. The regional key 331 may be determined frominformation stored in the user account, the system database, or bydetermining the region based on other factors (e.g., current GPSlocation). At operation 340, a title key extraction process may beinitiated to generate a title key 341. The title key 341 may include anidentifier associated with a particular title of the digital content.The title key 341 may be determined by querying the system database toobtain the unique title key associated with the digital content 302selected by the user.

The regional key 331 and the title key 341 combine (operation 342) toform a regional title key 344. Combining the regional key 331 and thetitle key 341 may occur through an XOR function as one non-limitingexample of a combining operation. In some embodiments, the user ID 324may also combine with the regional key 331 and the title key 341 to formthe regional title key 344. As a result, the regional title key 344 mayinclude the user ID 324 embedded therein, and the regional title key 344may be unique for each user. Combining the user ID 324 with the regionalkey 331 and the title key 341 may occur through a first XOR function, orother suitable combination, of the user ID 324 and the regional key 331and a second XOR function, or other suitable combination, with the titlekey 341. The user ID 324 may be stored in the storage device 120 forextraction during decryption.

The user key 326 may be used to encrypt the regional title key 344through an encryption process 327 to generate an encrypted regionaltitle key 328. The encryption process 327 may include an encryptionalgorithm, such as, for example, Advanced Encryption Standard (AES)algorithm. It is contemplated that the encryption process 327 beimplemented using encryption techniques, such as 128 bit, 256 bit, etc.The encrypted regional title key 328 may be stored in the storage device120 for extraction during decryption.

The regional title key 344 may also be used to generate a frame key 348.The frame key 348 may be used to encrypt the frame data 352 through anencryption process 354. The frame key 348 may dynamically changethroughout the encryption process 354 for each frame data 352. In otherwords, the frame key 348 may change for each frame of the frame data 352that is encrypted. For example, the frame key 348 used to encrypt thefirst frame may be different than the frame key 348 used to encrypt thesecond frame, and so on. The encryption process 354 may employ a varietyof different encryption techniques (e.g., AES). The encrypted frames 356may be stored in the storage device 120.

The digital content 302 may be encrypted based on a plurality of framekeys generated from the digital content itself. As an example, theregional title key 344 may be combined (operation 346) with previousencrypted frames 345 to generate the frame key 348. The combination ofthe previous encrypted frame 345 and the regional title key 344 may beimplemented using an XOR function. In some embodiments, the data usedfrom the previous encrypted frame 345 may not necessarily be the entireprevious encrypted frame. Rather, the data from the previous encryptedframe 345 that is used to generate the frame key 348 may be a selectedsubset of data (e.g., 128 bits) from the previous encrypted frame 345.

The frame data 352 may be generated from a frame extraction procedure350 of the digital content 302. The frame key 348 may then be used toencrypt the each individual frame data 352 rather than the digitalcontent 302 as a whole. As a result, the encryption process 354 maygenerate the encrypted frames 356. A previous encrypted frame 345 may becombined with the regional title key 344 to form each frame key 348 usedin the encryption process 354. In some embodiments, the previousencrypted frame 345 may be the encrypted frame 356 that was encryptedimmediately prior to the frame data 352 that is encrypted. In otherwords, the frame data 352 may be encrypted 354 using a frame key 348that includes the previous encrypted frame 345 that was just previouslyencrypted. The previous encrypted frame 345 may be extracted from thestorage device 120 when needed for operation 346. In some embodiments,the previous encrypted frame 345 may be any previously encrypted frameaccording to a rule governing the encryption. For example, if additionaldelay is desired during the encryption, the previous encrypted frame 345may be more than one encrypted frame 356 prior to the frame data 352being encrypted. In addition, when encrypting the first frame data ofthe digital content 302, there may not yet exist a previous encryptedframe 345. In such a situation, the regional title key 344 alone may beused as the frame key 348 for the first frame data 352 of the digitalcontent.

Because each previous encoded frame 345 is combined with the regionaltitle key 344 to generate the frame key 348, the frame key 348 is uniquefor each frame of the digital content. As a result, the encryption anddecryption devices that access the content on the storage device storagedevice 120 may not have a fixed key sitting in memory as is the casewith conventional encryption methods. Rather, the frame key 348 is adynamic key that is generated for each frame data 352 that is encrypted.In addition, each frame key 348 may not even need to be stored on thestorage device 120. For example, a refresh algorithm may be used togenerate a frame key 348 for each frame dynamically in order to encryptand decrypt each frame of the digital content 302. During encryption anddecryption, the frame key 348 may be constantly refreshing. As a result,if an attacker were to scan the memory cache (i.e., memory snooping) forthe frame key 348 when not in use, the frame key 348 itself would not beavailable. In addition, during encryption or decryption, the attackermay have greater difficulty detecting a pattern in the block of memorythan with the situation of using a static key as in conventionalencryption methods.

In some embodiments, the storage device 120 may also be loaded withcertificates and/or usage rules 360 that may restrict the use of theencrypted digital content according to some criteria. For example, insituations where renting the digital content 302 rather than owning thedigital content 302 is desired, one criteria of the usage rules 360 maybe the amount of time (e.g., 5 days) that the encrypted digital contentmay be available to the user. It is contemplated that other usage rules360 may exist. For example, a restriction may be placed on the number oftimes, frequency, etc. that the encrypted digital content may beaccessed.

Because the regional title key 344 is generated using a user ID 324,information regarding the user and/or storage device 120 may be embeddedwith the encrypted digital content. As a result, each storage device 120may have customized encryption keys rather than being mass produced on alarge scale. Because the frame key 348 and the encrypted regional titlekey 328 may include the user ID 324, a specific “traitor” may beidentified. A traitor may be a user who may contribute to unauthorizedaccess or copying of the encrypted digital content. For example, thecontent provider may obtain the compromised digital content and reversethe process to discover which user contributed to the digital contentbeing compromised. For example, comparing the extracted user ID 324against the system database may narrow the traitor down to a singleuser.

For embodiments using the device ID 322 in the encryption, even if theuser ID 324 and the method for generating the frame key 348 werecracked, the encrypted digital content would not decrypt on a differentdevice because the different device would have a different device ID322. For example, if someone were to hack the digital content 302 andload on a second device, the second device and the first device wouldhave different device IDs 322. As a result, the user key 326 for thesecond device would not match the user key 326 for the first device,which may result in the encrypted data content not being readable on thesecond device.

FIG. 4 is a block diagram 400 illustrating a method for decryptingencrypted digital content according to an embodiment of the presentdisclosure. The encrypted digital content may be encrypted according toembodiments of the present disclosure and stored in the storage device120. The decryption method may be implemented with a content player 130(FIG. 1). For example, the content player 130 may include a softwareapplication (and in some embodiments an additional plug-in) that isconfigured to perform the decryption method. In some embodiments, thedecryption method used may be approximately the reverse of theencryption method used. For example, the decryption method in FIG. 4 maybe used as a decryption method for encrypted digital content that isencrypted by the encryption method of FIG. 3.

At operation 405, usage rules may be examined to determine if the usagerules permit decryption of the encrypted digital content. As discussedabove, usage rules may place limits on the availability of the digitalcontent to a user. If the usage rules do not permit decryption, themethod may end. If the usage rules do permit decryption, the followingdecryption method may begin.

At operation 410, the encrypted regional title key 412 may be extractedfrom the storage device 120. As discussed above, the encrypted regionaltitle key 412 may have been stored on the storage device 120 duringencryption. In addition, the regional title key 412 may include acombination of a region key, a title key, and a user ID.

At operation 420, the user ID 422 may be extracted from the storagedevice 120. As discussed above, the user ID 422 may have been stored onthe storage device 120 during encryption. The user ID 422 may be aunique identifier associated with a specific user. The user ID 422 maybe assigned to a user when the user creates a user account, and may bestored on the storage device 120 during formatting of the storage device120. As discussed with respect to FIG. 3, the user ID 422 may have beenhashed during the encryption process. As a result, the user ID 422 mayalso be hashed when retrieved from the storage device 120 during thedecryption process as well.

At operation 430, the device ID 432 may be extracted from the storagedevice 120. As discussed above, the device ID 432 may have been storedon the storage device 120 during the manufacturing process of thestorage device 120. The device ID 432 may be a unique identifierassociated with the storage device 120 itself, such as a device serialcode prewritten in the ROM section of the storage device 120 by themanufacturer. As discussed with respect to FIG. 3, the device ID 432 mayhave been hashed when being used to combine with the user ID 422 and/orthe other keys. Because in some embodiments the device ID 432 may bestored in the storage device by the manufacturer and not the contentprovider, the device ID 432 may not be hashed as stored in the storagedevice 120. In such an embodiment, the device ID 432 may also need to behashed during the decryption process to match the encryption process.

At operation 440, the frames may be extracted from the digital contentto obtain encrypted frames. The encrypted frames may be retrieved one byone to be decrypted individually and to generate decrypted frame data446.

The user ID 422 and the device ID 432 may be combined (e.g., operation424) to generate a user key 426. The user key 426 and the encryptedregional title key 412 may be decrypted (e.g., through decryptionprocess 414) to generate the regional title key 415. The decryptionprocess 414 may be a reverse of the encryption process 327 (FIG. 3) usedto generate the encrypted regional title key 412. Thus, the decryptionprocess 414 (and decryption process 444) may employ a reverse AESfunction.

The regional title key 415 and the previous encrypted frame 417 may becombined (operation 416) to generate frame key 418 that is used fordecrypting (e.g., through decryption process 444) current encryptedframe 442. As a result, the decrypted frame data 446 may be generated.

As with the encryption process, the frame key 418 may be dynamicallygenerated rather than having a static key used for decryption. The framekey 418 may be generated on the fly during the decryption method ratherthan being saved in the decrypting device. As a result, memory snoopingto recover the frame key 418 may be less successful than conventionalmethods.

In addition, the frame key 418 may be reconstructed from the encrypteddigital content. For example, the frame key 418 used for decryption maybe based on the digital content itself as the previous encrypted frame417 may be used to generate a new frame key 418 for decryption of eachencrypted frame. In some embodiments, the previous encrypted frame 417may be the encrypted frame that is immediately prior to the currentencrypted frame 442 being decrypted, or some other separation betweenthe two. In addition, the first frame key 418 used may be the regionaltitle key 415 alone as there would be no previous encrypted frame 417available.

FIG. 5 is a block diagram 500 illustrating a method for encryptingdigital content 502 according to an embodiment of the presentdisclosure. The encryption method of FIG. 5 may include operationssimilar to those discussed above with respect to FIG. 3. The differencebetween the encryption method of FIG. 5 compared with FIG. 3 is that theblock diagram 500 does not include the portions pertaining to the userID and device ID. As a result, the regional title key 344 may notinclude the user ID. The encryption method of FIG. 5 does show the framekey 348 that may be generated based on the digital content 302 itself,such as, for example, by combining the regional title key 344 withprevious encrypted frames 345.

Such an embodiment may be desired if the encryption of the frame data isperformed at a point in time other than the actual downloading thedigital content 302 to the storage device 102. For example, onepotential drawback from such an embodiment is that the ability to narrowa traitor to a single individual user may be lost. However, the regionalkey 331 may include a region that is narrow enough to obtain amanageable list of users who may be the traitor. In other words, aregion for the traitor may be determined and the content provider (orother entity) may query the system database to determine which users arein that region, and which other those users have downloaded the digitalcontent 302 (e.g., title) that has been compromised. For example, it maybe known which defined region in which the user was located to load thedigital content 302. As a result, the system database may be queried toidentify each of the users in that region who may have downloaded thattitle. From that list, a relatively small list of possible offenders maybe created for further investigation.

FIG. 6 is a block diagram 600 illustrating a method for decryptingencrypted digital content according to an embodiment of the presentdisclosure. The decryption method of FIG. 6 may include operationssimilar to those discussed above with respect to FIG. 4. The differencebetween the decryption method of FIG. 6 compared with FIG. 4 is that theblock diagram 600 does not include the portions pertaining to the userID and device ID. Thus, the decryption method in FIG. 6 may be used as adecryption method for the encrypted digital content encrypted by theencryption method of FIG. 5. As a result, the regional title key 415 maynot include the user ID. The encryption method of FIG. 6 does show theframe key 418 that may be generated based on the digital content itself,such as, for example, by combining the regional title key 415 withprevious encrypted frames 417.

CONCLUSION

In some embodiments, a method for digital content protection isdisclosed. The method comprises generating a plurality of frame keys,retrieving a plurality of frames from digital content, and at least oneof encrypting and decrypting the digital content with a different framekey that dynamically changes for each frame of the plurality of frames.

In another embodiment, a storage device comprises a computer-readablemedium including encrypted digital content stored thereon, wherein theencrypted digital content is encrypted with a frame key that isdifferent for each frame of the encrypted digital content.

In yet another embodiment a content player comprises a computer-readablemedium including instructions stored thereon, that when executed cause aprocessor to decrypt encrypted digital content by reconstructing aplurality of frame keys that are different from each other that are usedto decrypt each frame of the encrypted digital content.

While the present disclosure has been described herein with respect tocertain embodiments, those of ordinary skill in the art will recognizeand appreciate that it is not so limited. Rather, many additions,deletions and modifications to the described embodiments may be madewithout departing from the scope of the disclosure as hereinafterclaimed, including legal equivalents. In addition, features from oneembodiment may be combined with features of another embodiment whilestill being encompassed within the scope of the disclosure ascontemplated by the inventor.

What is claimed is:
 1. A method for digital content protection, themethod comprising: retrieving, with the processor, a first frame fromdigital content; generating a first frame key; encrypting, with theprocessor, the first frame of the digital content with the first framekey to form a first encrypted frame; retrieving, with the processor, asecond frame from the digital content; generating, with the processor, asecond frame key using at least some data from the first encryptedframe; encrypting, with the processor, the second frame of the digitalcontent with the second frame key to form a second encrypted frame;encrypting, with the processor, an encrypted regional title key with auser key and a combination of a regional key and a title key to generatean encrypted regional title key; and storing the encrypted regionaltitle key and the encrypted digital content in a storage device.
 2. Themethod of claim 1, wherein generating the second frame key comprisesusing a selected subset of the first encrypted frame to generate thesecond frame key.
 3. The method of claim 1, wherein generating thesecond frame key comprises using the entire first encrypted frame togenerate the second frame key.
 4. The method of claim 2, whereingenerating the second frame key further includes combining a regionaltitle key with the first encrypted frame.
 5. The method of claim 4,wherein generating the first frame key further includes using theregional title key as the first frame key without combining a previouslyencrypted frame if no previous encrypted frame exists prior to the firstframe.
 6. The method of claim 4, wherein the regional key includes anidentifier associated with a particular geographic location, and thetitle key includes an identifier associated with a particular title forthe digital content.
 7. The method of claim 1, further comprising:generating the user key by combining a device ID and a user ID; andstoring the user ID in the storage device.
 8. The method of claim 4,wherein combining the regional title key with the first encrypted frameincludes performing an XOR function.
 9. A storage device, comprising: anon-transitory computer-readable storage medium including encrypteddigital content stored thereon, wherein the encrypted digital contentincludes: a first encrypted frame that is encrypted with a first framekey; and a second encrypted frame that is encrypted with a second framekey that is different than the first frame key and that uses at least aportion of the first encrypted frame combined with another key; and anencrypted regional title key stored on the computer-readable storagemedium, the encrypted regional title key being encrypted with a user keyand a combination of a regional key and a title key.
 10. The storagedevice of claim 9, wherein the user key includes a combination of auser-specific identifier and a device-specific identifier.
 11. Thestorage device of claim 9, wherein the regional key is associated with aregion selected from the group consisting of a city, an area code, a zipcode, a region served by a kiosk, and sub-regions thereof.
 12. Thestorage device of claim 9, further comprising a portable storage devicethat comprises the computer-readable storage medium, the portablestorage device selected from the group consisting of a Flash memorydevice, a smart phone, an eBook reader, a laptop computer, and a tabletcomputer.
 13. The storage device of claim 9, wherein the digital contentis selected from the group consisting of video content, audio content,video game content, health records, financial records, governmentrecords, and military records.
 14. A method for decrypting encrypteddigital content, the method comprising: extracting a regional title keystored in a storage device; extracting encrypted frames from theencrypted digital content including a first encrypted frame and a secondencrypted frame; decrypting the first encrypted frame using a firstframe key; combining the regional title key with data from the firstencrypted frame to generate second frame key; and decrypting the secondencrypted frame using the second frame key.
 15. The method of claim 14,further comprising the first frame key and the second frame keydynamically during decryption without either the first frame key or thesecond frame key being stored in the storage device.
 16. The method ofclaim 14, further comprising: extracting a user ID stored in the storagedevice, the user ID associated with a specific user; extracting a deviceID stored in the storage device, the device ID associated with thespecific storage device; combining the user ID and the device ID togenerate a user key; and wherein extracting the regional title keyincludes decrypting an encrypted regional title key with the user key togenerate the regional title key.
 17. The method of claim 14, furthercomprising receiving the encrypted digital content at a content playerfrom a remote server.
 18. The method of claim 17, wherein receiving theencrypted digital content includes streaming the encrypted digitalcontent at the content player.